// pages/adddev/adddev.js
var CryptoJS = require('./../../util/util.js');
var config = require('../../config.js')
const app = getApp()
Page({
  /**
   * 页面的初始数据
   */
  data: {
    phone:"",
    token:"",
  },

  to_config_wifi(res) {
    console.log(res)
    if (this.data.token == '')
    {
      wx.showToast({
        title: '请先连接正常网络获取验证',
        icon: 'none',
        duration: 2000
      })
      return;
    }

    wx.navigateTo({
      url: '../ap_wifi_config/ap_wifi_config?token='+this.data.token,
      events: {
        // 为指定事件添加一个监听器，获取被打开页面传送到当前页面的数据
        acceptDataFromOpenedPage: function (data) {
          console.log(data)
        },
        someEvent: function (data) {
          console.log(data)
        }
      },
      success: function (res) {
        // 通过eventChannel向被打开页面传送数据
        res.eventChannel.emit('acceptDataFromOpenerPage', { data: 'test' })
      }
    })
  },

/*
   setTimeout(function () {
      wx.hideLoading()
    }, 2000)
    

 */


  /**
   * {"result":"[object Object]","charSet":"UTF-8","errMsg":"scanCode:ok","scanType":"QR_CODE","rawData":"W29iamVjdCBPYmplY3Rd"}
   */
// { "uuid": "89628254840d8e92ea5e", "phone": "18681484401", "timestamp": "1588836610007" }
  to_adddev_qrcode(){
    var _this = this
    wx.scanCode({
      success(res) {
        // console.log("typeof", typeof (res))

        console.log(res.result)
        // console.log(JSON.stringify(res.result))
        if (res.errMsg == "scanCode:ok")
        {
          var dd = res.result
         // var search = "https://lanbocn.vip/wechat/miniprogram/?id=";
           var search = config.url.shareQrdata;
          var str0 = dd.substr(search.length)
        //  console.log('str0:', str0)

          var str = CryptoJS.Decrypt(str0);

          var json = JSON.parse(str)
          var code = json.code
          console.log('code:', code)

          var uuid = json.uuid  
          console.log('uuid:',uuid)

          var mainphone = json.phone
          console.log('mainphone:', mainphone)

          var timestamp = json.timestamp
          console.log('timestamp:', timestamp)
          var  hTime = parseInt(timestamp) 
          var qTime = new Date().getTime() 
          console.log('后时间', hTime, '前时间', qTime, '时间', qTime - hTime)

          if(code != '200')
          {
            wx.showToast({
              title: '无效二维码，请用本产品分享的二维码',
              icon: 'none',
              duration: 2000
            })
          }
          else if(qTime - hTime >6*60 * 1000)
          {
            wx.showToast({
              title: '无效二维码，请获取新的二维码',
              icon: 'none',
              duration: 2000
            })
          }
          else{
            //添加设备到服务器
            wx.request({
              url: config.url.addOthderDev,
              method: 'POST',
              dataType: "json",
              data: {
                uuid: uuid,
                phone: _this.data.phone,
                mainphone: mainphone,
                'client': config.client,
              },
              header: {
                // 'content-type': 'application/json', // 默认值
                "Content-Type": "application/x-www-form-urlencoded;charset=utf-8"
              },
              success(res) {
                console.log(res.data)
                console.log("code:", res.data.code)

                if (res.data.code == 200) {
                  wx.showToast({
                    title: '添加成功',
                    icon: 'succeed',
                    duration: 2000
                  })
                  // app.logoutConnect()
                  app.globalData.uuids.push(uuid)
                  console.log("cz uuids:", app.globalData.uuids)
                 
                  app.globalData.bootStatus = false

                  // app.globalData.MQ.subscribe(uuid, {}, function (err) {
                  //   if (!err) {
                  //     console.log('注册事件成功=>', uuid)
                  //     app.globalData.MQConnectd = true
                  //   }
                  // })

                  setTimeout(function () {

                    wx.reLaunch({
                      url: '../index/index',
                    })

                  }, 200)
                }
                else if (res.data.code == 201) {
                  wx.showToast({
                    title: '主设备不存在',
                    icon: 'none',
                    duration: 2000
                  })
                }
                else if (res.data.code == 202) {
                  wx.showToast({
                    title: '主用户不存在',
                    icon: 'none',
                    duration: 2000
                  })
                }
                else if (res.data.code == 203) {
                  wx.showToast({
                    title: '用户未注册，请先登录',
                    icon: 'none',
                    duration: 2000
                  })
                }
                else if (res.data.code == 204) {
                  wx.showToast({
                    title: '同一设备不能反复添加',
                    icon: 'none',
                    duration: 2000
                  })
                }
                else if (res.data.code == 205){
                  wx.showToast({
                    title: '设备已经存在',
                    icon: 'none',
                    duration: 2000
                  })
                }
                else {
                  wx.showToast({
                    title: '添加失败，请检查二维码',
                    icon: 'none',
                    duration: 2000
                  })

                }

              },
              fail(e) {
                console.error(e)

              }
            })
          }

        }
        else
        {
          wx.showToast({
            title: '请重新扫一扫',
            icon: 'none',
            duration: 2000
          })
        }
      
        //JSON.parse(jsonstr); //可以将json字符串转换成json对象
       // JSON.stringify(jsonobj); //可以将json对象转换成json对符串
      }
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log('onLoad',options)
   // console.log('onLoad q->', options.q)
   
    // wx.startWifi({
    //   success(res) {
    //     console.log(res.errMsg)

    //     if (res.errMsg == "startWifi:ok") {
    //       wx.getConnectedWifi({
    //         success: function (e) {
    //           console.log("wifi e:", e)
    //           if (e.errMsg == "getConnectedWifi:ok") {
    //             var str = e.wifi.SSID
    //             console.log("indexOf:", str.indexOf('AP-'), 'length:', str.length)
    //             if ((str.indexOf('AP-') == 0) && (str.length == 18)) {
    //               wx.showToast({
    //                 title: '请先连接正常上网的WIFI',
    //                 icon: 'none',
    //                 duration: 2000
    //               })
    //             }
    //           }
    //         },
    //         fail: function (e) {
    //           console.log("wifi err:", e)

    //           if(e.errCode== 12005)
    //           {
    //             wx.showToast({
    //               title: '请先连接正常上网的WIFI',
    //               icon: 'none',
    //               duration: 2000
    //             })
    //           }
    //           else if (e.errCode == 12006) {
    //             wx.showToast({
    //               title: '请先打开GPS定位',
    //               icon: 'none',
    //               duration: 2000
    //             })
    //           }
    //         }

    //       })
    //     }
    //   }
    // })

   // console.log("index 生命周期 onload" + JSON.stringify(options))
    //在此函数中获取扫描普通链接二维码参数
    let q = decodeURIComponent(options.q)
    if (q) {
      console.log("index 生命周期 onload url=" + q)

      var search = "https://www.apai.vip/wechat/miniprogram/?id=";
      var str0 = q.substr(search.length)
      console.log('str0:', str0)
      
    //  console.log("index 生命周期 onload 参数 flag=" + utils.getQueryString(q, 'flag'))
    }
    if ((typeof options.phone != 'undefined'))
    {
      this.setData({
        phone: options.phone
      })
    }
    else
    {
      var phone = wx.getStorageSync('phone')
      this.setData({
        phone: phone
      })
    }
   
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    var _this =this
      wx.request({
        url: config.url.getClientToken,
        method: 'POST',
        data: {
          appid: config.appid,
          client: config.client,
        },
        header: {
          "Content-Type": "application/x-www-form-urlencoded"
        },
        success(res) {
          console.log(res.data)

          if (res.data.code == "200") {

            _this.setData({
              token: '' + res.data.data
            })
            try {
              wx.setStorageSync('token', res.data.data)
            } catch (e) { } 

          }
          else {
            wx.showToast({
              title: '获取用户ID失败',
              icon: 'none',
              duration: 2000
            })
          }

        },

      })

    
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  }
})